System and method for an online speaker patch-through

ABSTRACT

A systems and methods described herein may be incorporated into a “service marketplace” system that matches users with potential information or service providers and establishes a real-time communications connection between the user and a selected information provider. In one embodiment, an alternate is selected for the user when the service provider that the user is trying to connect with cannot be reached. In an alternative embodiment, the alternates can be used in conjunction with the service provider that does connect with the user in order to provide a second opinion or possibly deeper background information. In one embodiment, the service providers can either be a live person at the other end of the connection or a recording.

[0001] This application is related to co-pending application U.S. application Ser. No. 09/414,710 filed on Oct. 8, 1999, the entire contents of which are incorporated by reference herein.

[0002] The present invention relates generally to electronic commerce using digital and analog networks. More specifically, the present invention relates to a network application for connecting clients with an alternate service provider if the selected service provider is unavailable.

BACKGROUND OF THE INVENTION

[0003] Consumers interested in acquiring services must first identify a service provider who is capable of providing the desired services. At present, this usually means perusing a telephone directory, which can become frustrating and time-consuming if the service providers telephoned are not immediately available. Also, a phone book (whether a bound paper book or an electronic directory) is also not very effective if the service provider's business category is not known.

[0004] Over the years, a number of systems have been developed that partially address this problem. In particular, these include systems that attempt to match potential customers with potential service providers. They range from free bulletin-board-style Internet web sites to sophisticated Internet-based consulting services.

[0005] One such system is similar to an electronic “marketplace.” Users submit via the Internet a description of the services they need to an Internet-based “exchange.” These descriptions include the subject matter of the requested service, time constraints for service delivery, and the proposed price to be paid for the services. The exchange then identifies potential service providers and facilitates bidding for the job by the selected service providers, some of whom may or may not have been selected previously by the user. Once the service providers' bids have been received by the user, the user sends a full job request to one or more service providers of particular interest. The service providers who remain interested in the proposed work then submit a final bid to the user. This bid may also include the service provider's particular qualifications and conditions for accepting the work. After the work has been completed, the service provider contacts the exchange for payment. Although this system is beneficial, users still do not immediately know if a service provider is available and the response from the service provider is neither immediate nor direct.

[0006] Another prior art system maintains a list of independent professors available for answering questions via the Internet. The system functions as a middleman between the customer and the professors. The customer contacts the system via the Internet with a question. The system then contacts various service providers within the appropriate field via the Internet and forwards the customer's question to the service providers. Here too, customers do not immediately know if a service provider is available, and the response from the service provider is not immediate.

[0007] There is another system that allows users to post via the Internet questions for service providers related to specific topical categories. However, there is no guarantee that a service provider will answer the question as the user does not pay for the services and the service providers are not paid. Again, presuming the service provider is willing to answer a question, users do not immediately know if a service provider is available and the response from the service provider is neither immediate nor direct.

[0008] Another system allows users to post questions to an electronic “bulletin board.” Other users, whether service provider or not, provide answers or comments on a voluntary basis. This system, though useful, suffers from many of the same problems as the system described above.

[0009] What is needed is a system and method for a user to select an information provider and be connected to that provider in real time. What is further needed is a method and system for finding the user an alternate service provider when the service provider that the user has selected is not available.

SUMMARY OF THE INVENTION

[0010] The systems and methods described herein may be incorporated into a “service marketplace” system that matches users with potential information or service providers and establishes a real-time communications connection between the user and a selected information provider. In one embodiment, an alternate is selected for the user when the service provider that the user is trying to connect with cannot be reached. In an alternative embodiment, the alternates can be used in conjunction with the service provider that does connect with the user in order to provide a second opinion or possibly deeper background information. In one embodiment, the service providers can either be a live person at the other end of the connection or a recording. For example, the recordings can be used as samples for the user to test out before going on to the live service provider.

BRIEF DESCRIPTION OF THE DRAWINGS

[0011] The present invention is illustrated by way of example and not limitation in the figures of the accompanying drawings, in which like references indicate similar elements, and in which:

[0012]FIG. 1 illustrates a system for identifying information providers and connecting customers with information providers in accordance with one embodiment of the invention.

[0013]FIG. 2 illustrates an alternative embodiment of the system for identifying information providers and connecting customers with information providers.

[0014]FIG. 3 illustrates one embodiment of an information provider's listing page.

[0015]FIG. 4 diagrams in a flowchart an embodiment of a method performed when a user attempts to reach a service provider who is not available for communication

[0016]FIG. 5 diagrams in a flowchart an embodiment for producing an alternate service provider for the user when the selected service provider is unavailable.

[0017]FIG. 6 diagrams in a flowchart an embodiment for selecting a service provider.

[0018]FIG. 7 diagrams in a flowchart an alternate embodiment of a method performed when a user attempts to reach a service provider.

[0019]FIG. 8 diagrams in a flowchart an alternate embodiment of a callback method in the event that a connection attempt between service provider and user is unsuccessful.

DETAILED DESCRIPTION OF THE INVENTION

[0020] The systems and methods of the present invention may be incorporated as part of a network application that establishes a real-time communications connection between an information provider and a customer or user through a communications network, such as telephone network, a computer network, wireless communications network, etc. The network application in one embodiment would be for a method of providing a user who has selected an information provider from a list or database with an alternative information provider. These alternative information providers could be used as replacements for the selected information provider if that service provider is absent when the user attempts a connection. The alternate information providers can also be supplemental to the selected information provider. The term information provider can refer to either a live service provider or a recording made by a service provider.

[0021]FIG. 1 shows one embodiment of a system capable of incorporating one embodiment of the invention. User computers (“customer computers”) 110 and information provider computers (“service provider computers”) 120 are connected through a network 150 (such as the Internet) to a host computer or web server (“controller computer”) 130. Persons skilled in the art will recognize that the controller computer 130 may consist of more than one computer working together to provide the controller computer functions described herein. The users (customers) and information providers (service providers) each have telephones 140 that are connected to the telephone network 160. In FIG. 1, the computer network 150 and telephone network 160 are shown as two separate entities, though persons skilled in the art will realize that they can overlap, as illustrated in FIG. 2.

[0022] In one embodiment, the controller computer 130 has the functionality of a standard web server, capable of interacting dynamically via the service provider computers 120 and the customer computers 110 with service providers and customers, respectively. In addition to the standard web server operation, the controller computer 130 is linked to a telephone interface 170 that enables the controller computer 130 to set up, initiate, confirm, and/or track conversations between the customers and service providers. The controller computer 130 has the ability to establish a real-time communications connection between service providers and customers to convey information in real-time in an interactive manner.

[0023] In accordance with the embodiment shown in FIG. 1, the customer computers 110 and the service provider computers 120 are connected to the controller computer 130 through the network 150. Customers and service providers use their computers to connect to the Internet network 150. Once a connection has been established, service providers and customers will enter the URL, or Internet address, of the controller computer 130, and a logic unit within the controller computer establishes a computer connection with the customer computer 110 and the service provider computer 120. In one embodiment, after the computer connection has been established between the controller computer 130 and the service provider and customer computers, 120 and 110, respectively, a logic unit within the controller computer presents a web page on the service provider and customer computers.

[0024] Typically, customers and service providers register before customers can purchase services or information and before service providers can offer their services or information through the web site. During registration, the customers and the service providers are requested to submit certain information, such as a username and password. Customers may be requested to submit credit card or other financial information. Service providers may or may not be requested to submit credit card or other financial information. Once the requested information has been submitted, the data is stored in the database 310 in an account set up for the service provider and in a user account set up for the customer.

[0025] A logic unit within the controller computer 130 may present a web page on the customer computer 110 and the service provider computer 120 through which the logic unit prompts the customer and the service provider to submit the requested registration information. The logic unit is linked with the database 135 and may automatically set up the accounts and automatically store the submitted registration information in the appropriate accounts on the database 135.

[0026] Service providers typically submit a description or a listing for each service they will provide through the web site. After the controller computer 130 has stored the description or listing, the service described may be offered to all of the users who browse the web site. Access to the web site may be established as described above, with the customer using a user computer (“customer computer”) 110 to connect to a network 150 and then entering the URL of the controller computer 130. A logic unit within the controller computer 130 then establishes a computer connection with the customer computer 110.

[0027] After the computer connection has been established, in one embodiment customers will have the option of executing a keyword search for service providers. The keyword search can be executed from a web page presented by a logic unit of the controller computer 130 on the customer computer 110. In an alternative embodiment, the system can be accessed by a third party website. A keyword search typically consists of scanning a database for words that match the keywords entered. In this embodiment, the keyword search will be executed against the stored descriptions and listing data. In one embodiment, customers will view a list of service providers matching the keyword search criteria on a web page presented by the logic unit on the customer computer. Customers will have the option of viewing the service providers listed according to price, availability, or customer evaluations in either ascending or descending order, though the service providers can be listed in any number of ways. As an alternative to a keyword search, customers can select a category to view a predetermined list of service providers.

[0028] In an alternative embodiment in which the customer all ready knows the service provider that the customer wishes to contact, that customer can dial an 800 number to connect with the service provider. The customer enters the extension of the service provider, as well as the customer's personal identification number and the telephone number listed in the customer's personal information file. The system then attempts to connect the user with the service provider.

[0029] In one embodiment, a logic unit within the systems presents, in response to a customer selection of a service provider from the list, a listing page that contains additional information about the selected service provider and the selected information service. FIG. 3 illustrates an example of a listing page that provides more detailed information about a service provider that goes by the name of Jim. The listing page 300 shown in FIG. 3 provides a brief description the information services provided 310 and may also include rating information 320, a picture of the service provider 330, a rate or price per minute 340, as well as other information that the potential customer may find helpful such as the education background of the service provider 345. The listing page 300 may also include an icon wit hyperlink 350 that shows whether or not the service provider is available, and if he is, it may provide hyperlinks that enable the customer to call 350 or email 355 the service provider. The information provided in a listing page may be conveyed in other forms, e.g., instead of a picture or photo 330 the service provider may choose to be represented with an avatar or other information-rich graphic, and may include other types of information in addition or instead of the information shown in the embodiment of FIG. 3.

[0030] When a customer decides to receive information, services, or just pleasant conversation from the service provider, the customer may request to have a real-time communications connection established with the service provider. For example, from the listing page illustrated in FIG. 3, a customer may click on the “Call Now” hyperlink 350 to send such a request and, in response, a logic unit within the system attempts to establish a real-time communications connection between the customer and the service provider. This real-time communications connection can take the form of a telephone connection, website chat, or voice connection over the Internet.

[0031] In one embodiment, if a connection should be attempted and the service provider proves to be unavailable to respond, a logic unit within the controller will initiate a search of the system's list of service providers for an alternate service provider. In one embodiment, the list of alternate service providers will be made up of service providers who match the selected service provider when compared using a pre-established set of criteria. The criteria can either be formulated ahead of time by the system administrator or entered into the system by the user. The criteria used could include subject matter and/or probably price.

[0032] In one embodiment, if the search fails to turn up a matching alternate service provider (e.g., appropriate expertise and price range, or whatever other criteria the system is using) the system will not give the user the option of accepting an alternate. If the search does turn up someone who meets all the appropriate criteria and the user accepts, the user will be connected through, or “patched through”, to the available service provider.

[0033] In one embodiment, the service provider would be able to set up ahead of time a referral, as described above, in case a call should come while they were unavailable. For example, she can elect to have the call patched through to a backup service provider of her choice, have one selected from the database for her, or have the user just be told that the service provider was not available and to try back later. In one embodiment, if the service provider chooses to refer the call to someone else or to the database, that service provider will receive a percentage of whatever fees were earned. This may be an incentive for the service provider to refer.

[0034]FIG. 4 shows one embodiment of a system for referral, or “patch-through”. In step 400, the user, or “Seeker”, is provided with a list of service providers, or “Speakers”, on a topic of the Seeker's choosing. The Seeker selects a Speaker of his choosing in step 410. In step 420, the system then attempts to connect the Seeker with the Speaker in real time via a choice of methods as described above. If the connection is successful at step 430, then the system goes to step 440 and the Speaker and the Seeker will communicate in real time. In step 450, the Seeker's account is billed for the amount of time spent communicating with the Speaker at the Speaker's posted rate. The system then takes for itself in step 460 a percentage of the amount billed. If the connection is not successful the first time, the system will try again. In step 470, the system keeps track of how many attempts are made. In step 480, if the system has tried a predetermined number of times (T), then the system will try to find the Seeker an alternate Speaker in step 500.

[0035] A method for finding an alternate Speaker is shown in FIG. 5. First, in step 510 the system checks whether the Speaker has an arrangement with a second Speaker to refer to the second Speaker any Seekers for which the initial Speaker is not available. If the initial Speaker does have a “covering Speaker”, then in step 520 the Seeker is asked if he wishes to use the covering Speaker. If the Seeker does want to communicate with the covering Speaker, then the system proceeds to step 530 and attempts to connect them using the method previously discussed 420. If the Seeker does not want to use the covering Speaker, the Seeker is asked in step 540 if they would prefer a Speaker selected from the database. If the Seeker does prefer the database option, then the system proceeds to step 550 and the database of Speakers is searched. The search could be limited to the Speakers in the same subject matter as the original Speaker. If the Seeker chooses not to have the database pick an alternate Speaker, the system proceeds to step 560 and the connection is terminated. If the system finds in step 570 an alternate Speaker, then in step 580 the Seeker is asked if he we wishes to communicate with the alternate Speaker. If the Seeker does want to use the alternate, then the system in step 590 attempts to connect them using the method previously discussed 420. If the system was unable to find a qualified Speaker, it then informs the Seeker of this in step 595. If the Seeker does not like the alternate Speaker selected, then the Seeker is thanked and the call is terminated as in step 560.

[0036] An exemplary embodiment for searching the database for an appropriate alternate Speaker is illustrated in FIG. 6. In one embodiment, the search would be limited to the Speakers in the same subject matter as the initial Speaker. Speakers are arranged by subject matter on the list of Speakers, simplifying the exclusion of Speakers that are not in the same category. In one embodiment, the search pool would also exclude the initial Speaker and any Speaker listed as being not available at that time.

[0037] Before starting the search, a set of parameters is initialized in step 610. In one embodiment, the total number of Speakers being sorted (n), an index number (s), and an alternate Speaker index (CS) could be used to keep track of whether all the Speakers in that field have been searched through and if any viable alternates have been found. The index number would indicate which Speaker in the pool the system is looking at and the alternate Speaker index would indicate the current Speaker (e.g. the least expensive, the most reliable, or other criteria deemed important). The nature of the other parameters depends on the type of criteria the system, or in some embodiments the user, want to use to sift through the database. For example, the criteria of price (P(s)) and reliability (R(s)) could be used. A set percentage (p) of the selected Speaker's price (PO) would be established as the maximum variance, while a minimum reliability index (r) is also set. The criteria p could be expressed as a decimal. One embodiment of the reliability index would be the number of successful connections between that Speaker and previous users divided by total number of connections attempted. First time Speakers could be given either a unity reliability index to make sure that new Speakers are not constantly ignored, or a zero reliability index to make it more likely that the Seeker will get somebody who will be there. The current Speaker could be judged against a reliability index of r and a price of (1+p) times PO. Other criteria, such as whether the Speaker is part of a recognized group, entity, or company, could be used as well. Alternate Speaker index CS is set to −1 or some other number that it could not possibly reach otherwise. This setting is selected so that the system knows whether or not any viable alternate Speaker was found. Speaker index s is set to 0 to examine the first Speaker in the field.

[0038] The algorithm displayed is rather simple. In step 620, the price for Speaker 0 is checked against the selected Speaker's price. If the price is greater than or equal to the maximum tolerance for the initial Speaker's price, the system follows Loop 1 in FIG. 6 and increments the Speaker index s at step 630. If the price for Speaker 0 is less than the maximum tolerance for the initial Speaker's price, then the system moves to step 640 and the reliability index is considered. If the reliability index is less than or equal to the minimum reliability index r, the system follows Loop 2 and increments the Speaker index s at step 630. If the reliability index of Speaker s is greater than the minimum reliability index r, then the alternate Speaker index CS is set to the index of that Speaker s in step 650. Additionally in step 650, the reliability index for that Speaker becomes the new minimum reliability index r. The system follows Loop 3 and increments the Speaker index at step 630. If the Speaker index s is less than the total number of Speakers n at step 660, then the process is repeated. If not, then the alternate Speaker index CS is examined at step 670. If the alternate Speaker index CS equals −1, or whatever other impossible number it was originally set to, then this means that no alternate Speaker was found, and such a message is sent to the Seeker at step 680. If alternate Speaker index CS equals a positive integer, then the Speaker noted by that index is selected as the alternate Speaker at step 690. In theory, this will be the Speaker with the highest reliability index, or the first Speaker found at that index.

[0039] The algorithm is only exemplary and can be altered to suit the needs of the system manager. For example, the Speaker with the lowest price could be sought out, or the lowest price at the highest reliability index. In addition, other criteria can be introduced into the system and the algorithm could be adjusted accordingly. The current algorithm can also be altered to increase speed and efficiency.

[0040] The search for alternate Speakers does not apply solely to occasions where the initial Speaker is unable to reply. An alternate Speaker could be provided to supplement the advice of the initial Speaker. An exemplary embodiment of this is shown in FIG. 7. As before, the system provides a list of service providers at step 700 and the Seeker chooses the one he prefers at step 710. The system then connects the Seeker with the Speaker at step 720, and the Speaker advises the Seeker as before in step 730. As embodied here, the system searches the database for alternate Speakers at step 740 after the initial Speaker advises the Seeker, but this search can occur anytime after the Seeker has selected a Speaker. At step 750, the Seeker would be asked whether he desires to hear a second opinion from a second Speaker. If he does, the system will then connect him with the alternate Speaker, as it did in step 720. If not, the Seeker's call is completed 760.

[0041] The information providers are not necessarily limited to live service providers. A service provider can pre-record information on a topic that can be played over the telephone for the user who has selected it. These recorded answers could be used standing alone or to complement an existing live-answer service provider, another recorded service provider, or another recording by the same service provider. Additionally if the service provider should be unable to respond to a connection, she could have a previously prepared tape on the listed subject that the user could be referred to.

[0042] An alternate embodiment would be for a user that has communicated with a service provider to hear recorded materials on that subject. Additionally, a user that has listened to a recording could then choose to hear more from the person in question, either live or by a recording on a different subject.

[0043] One embodiment would be a form of advertising. The user could select a cheaper recording by the desired service provider. After having listened and evaluated the recording, the user could then choose to pay more to hear the person live. This way impulse buying of service provider opinions could be increased, in addition to giving the user a less expensive method of evaluating the service provider's skills and knowledge before purchase. In one embodiment, the user could receive a condensed version of the information from the recording then go in depth with the live service provider.

[0044] In an alternative embodiment illustrated by the flowchart of FIG. 8, the patch-through need not connect the user with an alternate service provider if the user decides against having an alternate. This embodiment would attempt to connect the user with a service provider. In the event that the attempts to connect with the alternate service provider prove unsuccessful 800, the user is provided with a set of options 810. The user can choose to be provided with an alternate provider 500, in which case the system would follow the method illustrated on the flowchart of FIG. 5. The user could also choose to leave a message on voice mail 820, then have the connection terminated 830. In an alternate embodiment, the user could choose to have the service provider call them back 840. The user would set the phone number at which the user would be contacted 850, and set a time limit within which the service provider was to call 860. After the call back is set up, the connection would be terminated 830.

[0045] When the systems and methods of the present invention are incorporated as part of a network application that establishes a real-time communications connection between an information provider and a customer or user through a communications network, the possibility that the user will actually connect with an information provider increases. In addition, by supplementing the provider's information service with second opinions or informational recordings, the user is given a more complete experience by the application. By allowing customers to screen service providers by first listening to recordings by the service providers before being patched through to the live service provider, customer satisfaction can also be increased.

[0046] The method and apparatus disclosed herein may be integrated into advanced Internet- or network-based knowledge systems as related to information retrieval, information extraction, and question and answer systems. FIG. 6 is an example of one embodiment of a computer system. The system shown has a processor 601 coupled to a bus 602. Also shown coupled to the bus are a memory 603 which may contain instructions 604. Additional components shown coupled to the bus are a storage device 605 (such as a hard drive, floppy drive, CD-ROM, DVD-ROM, etc.), an input device 606 (such as a keyboard, mouse, light pen, bar code reader, scanner, microphone, joystick, etc.), and an output device (such as a printer, monitor, speakers, etc.). Of course, an exemplary computer system could have more components than these or a subset of the components listed.

[0047] The method described above can be stored in the memory of a computer system (e.g., set top box, video recorders, etc.) as a set of instructions to be executed. In addition, the instructions to perform the method described above could alternatively be stored on other forms of machine-readable media, including magnetic and optical disks. For example, the method of the present invention could be stored on machine-readable media, such as magnetic disks or optical disks, which are accessible via a disk drive (or computer-readable medium drive). Further, the instructions can be downloaded into a computing device over a data network in a form of compiled and linked version.

[0048] Alternatively, the logic to perform the methods as discussed above, could be implemented in additional computer and/or machine readable media, such as discrete hardware components as large-scale integrated circuits (LSI's), application-specific integrated circuits (ASIC's), firmware such as electrically erasable programmable read-only memory (EEPROM's); and electrical, optical, acoustical and other forms of propagated signals (e.g., carrier waves, infrared signals, digital signals, etc.); etc.

[0049] Although the present invention has been described with reference to specific exemplary embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the invention. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense. 

What is claimed is:
 1. A system, the system comprising: a first logic unit to provide a list of service providers to a user, indicating the availability of that provider; a second logic unit to receive the user's selection of a service provider; a third logic unit to attempt to establish a real-time communications connection between the user and a selected service provider; and a fourth logic unit to search a database of service providers for an alternate service provider based on a pre-established set of criteria and to offer the user an option of connecting with an alternate service provider.
 2. The system of claim 1, wherein the fourth logic unit presents the alternate service provider if the user fails to connect with the selected service provider.
 3. The system of claim 1, wherein the fourth logic unit presents the alternate service provider after the user has completed a communication with the selected service provider
 4. The system of claim 1, wherein the service provider is an information provider.
 5. The system of claim 4, wherein the information provider's information is provided in the form of a recorded transmission.
 6. The system of claim 4, wherein the information provider's information is provided in the form of a communication with a live person.
 7. The system of claim 1, wherein the user's selection of a service provider is received over a telephone connection.
 8. The system of claim 1, wherein the user's selection of a service provider is received over an Internet connection.
 9. The system of claim 1, wherein the pre-established set of criteria includes a rate of the service provider.
 10. The system of claim 9, wherein the rate is determined to be a match if it is within a predetermined range of the selected service provider's rate.
 11. The system of claim 1, wherein the pre-established set of criteria includes subject matter.
 12. The system of claim 1, wherein the pre-established set of criteria includes a combination of separate criteria.
 13. The system of claim 1, wherein a system administrator establishes the set of criteria.
 14. The system of claim 1, wherein a user establishes the set of criteria.
 15. The system of claim 1, wherein the pre-established set of criteria includes a reliability factor.
 16. The system of claim 15, wherein the reliability factor consists of a ratio of successful connections between service provider and previous users to total attempts between the service provider and previous users.
 17. A system for establishing a real-time communication connection between two parties, the system comprising: a communications interface; and a controller computer linked with the communications interface, the controller computer having: a first logic unit to provide a list of service providers to a user, indicating the availability of that provider; a second logic unit to receive the user's selection of a service provider; a third logic unit to attempt to establish a real-time communications connection between the user and a selected service provider; and a fourth logic unit to search a database of service providers for an alternate service provider based on a pre-established set of criteria and to offer the user an option of connecting with an alternate service provider.
 18. The system of claim 17, wherein said third logic unit attempts to establish a real-time communications connection between the user and the alternate service provider.
 19. The system of claim 17, wherein the real-time communications connections is a telephone connection.
 20. The system of claim 17, wherein the real-time communications connections is an Internet connection.
 21. The system of claim 17, wherein the first logic unit provides the list of providers to the user via a web page.
 22. The system of claim 17, wherein the second logic unit receives the user's selection via the web page.
 23. The system of claim 17, wherein the third logic unit provides the list of alternate providers to the user via the web page.
 24. The system of claim 17, wherein the service provider is an information provider.
 25. The system of claim 24, wherein the information provider's information is provided in the form of a recorded transmission.
 26. The system of claim 24, wherein the information provider's information is provided in the form of a communication with a live person.
 27. The system of claim 17, wherein the fourth logic unit begins working only if the third logic unit fails to establish a connection.
 28. The system of claim 17, wherein the pre-established set of criteria includes a rate of the service provider.
 29. The system of claim 28, wherein the rate is determined to be a match if it is within a predetermined range of the selected service provider's rate.
 30. The system of claim 17, wherein the pre-established set of criteria includes subject matter.
 31. The system of claim 17, wherein the pre-established set of criteria includes a combination of separate criteria.
 32. The system of claim 17, wherein a system administrator establishes the set of criteria.
 33. The system of claim 17, wherein a user establishes the set of criteria.
 34. The system of claim 17, wherein the fourth logic unit offers the option of connecting the user to the alternate service provider after communication has ceased with the selected service provider.
 35. The system of claim 17, wherein the pre-established set of criteria includes a reliability factor.
 36. The system of claim 35, wherein the reliability factor consists of a ratio of successful connections between service provider and previous users to total attempts between the service provider and previous users.
 37. A method comprising: sending a user a list of service providers with their availability indicated; receiving from the user a selection of a service provider; attempting to establish real-time communications between the user and the selected service provider; and offering the user an option to connect to an alternate provider.
 38. The method of claim 37, wherein the selected service provider designates an alternate service provider in advance.
 39. The method of claim 37, further including searching a database of service providers for alternate providers who match the selected service provider based on a pre-established set of criteria.
 40. The method of claim 37, wherein the connection established between the service provider and the user is a telephone connection.
 41. The method of claim 37, wherein the connection established between the service provider and the user is an Internet connection.
 42. The method of claim 37, wherein the database is searched and information about an alternate service provider is sent only if the user fails to connect to the selected service provider.
 43. The method of claim 37, wherein the option to connect to said alternate service provider is sent after the connection between the user and the service provider ends.
 44. The method of claim 37, wherein the service provider is an information provider.
 45. The method of claim 44, wherein the information provider's information is provided in the form of a recorded transmission.
 46. The method of claim 44, wherein the information provider's information is provided in the form of a communication with a live person.
 47. The method of claim 37, wherein rate is a criterion by which an alternate service provider is matched.
 48. The method of claim 47, wherein a rate is determined to be a match if it is within a predetermined range of the selected service provider's rate.
 49. The method of claim 48, wherein the user determines the range of rates that match.
 50. The method of claim 48, wherein a system administrator determines the range of rates that match.
 51. The method of claim 37, wherein subject matter is a criterion by which an alternate service provider is matched.
 52. The method of claim 37, wherein a combination of criteria is used to determine a match.
 53. The method of claim 37, wherein a system administrator establishes the criteria by which a match is determined.
 54. The method of claim 37, wherein the user establishes the criteria by which a match is determined.
 55. The method of claim 37, wherein only service providers that pass a reliability criterion are considered.
 56. The method of claim 55, wherein reliability is determined based on a ratio of the number of calls answered by a service provider to the number of calls placed to the service provider.
 57. A method of rerouting a user from a selected service provider to an alternate service provider, the method comprising: giving the selected service provider an option of sending the user to a database of service providers when the selected provider can not be reached; searching the database for an alternate service provider that matches the selected service provider based on a pre-established set of criteria; and providing the user with a list of the matching alternate service providers.
 58. The method of claim 57, wherein the service provider is an information provider.
 59. The method of claim 58, wherein the information provider's information is provided in the form of a recorded transmission.
 60. The method of claim 58, wherein the information provider's information is provided in the form of a communication with a live person.
 61. The method of claim 57, wherein the user can then select an alternate service provider and be connected that provider.
 62. The method of claim 57, wherein the selected service provider receives a pre-established percentage of any commission paid to the alternate service provider.
 63. The method of claim 57, wherein the service provider is given the option of sending the user to the database when the service provider creates the initial listing with the system.
 64. The method of claim 63, wherein the default option is to send the user to the database.
 65. The method of claim 57, wherein the selected service provider is notified of the missed connection with the user.
 66. The method of claim 65, wherein the notice comes in the form of email.
 67. The method of claim 57, wherein rate is a criterion by which an alternate service provider is matched.
 68. The method of claim 57, wherein a rate is determined to be a match if it is within a predetermined range of the selected service provider's rate.
 69. The method of claim 57, wherein the user determines the range of rates that match.
 70. The method of claim 57, wherein a system administrator determines the range of rates that match.
 71. The method of claim 57, wherein subject matter is a criterion by which an alternate service provider is matched.
 72. The method of claim 57, wherein a system administrator establishes the criteria by which a match is determined.
 73. The method of claim 57, wherein the user establishes the criteria by which a match is determined.
 74. The method of claim 57, wherein a combination of criteria is used to determine a match.
 75. The method of claim 57, wherein only service providers that pass a reliability criterion are considered.
 76. The method of claim 75, wherein reliability is determined based on a ratio of the number of calls answered by a service provider to the number of calls placed to the service provider.
 77. A machine-readable storage medium tangibly embodying a sequence of instructions executable by the machine to perform a method comprising: sending a user a list of service providers with their availability indicated; receiving from the user a selection of a service provider; attempting to establish real-time communications between the user and the selected service provider; and offering the user an option to connect to an alternate provider.
 78. The machine-readable storage medium of claim 77, wherein the selected service provider designates an alternate service provider in advance.
 79. The machine-readable storage medium of claim 77, further including searching a database of service providers for alternate providers who match the selected service provider based on a pre-established set of criteria.
 80. The machine-readable storage medium of claim 77, wherein the connection established between the service provider and the user is a telephone connection.
 81. The machine-readable storage medium of claim 77, wherein the connection established between the service provider and the user is an Internet connection.
 82. The machine-readable storage medium of claim 77, wherein the database is searched and information about an alternate service provider is sent only if the user fails to connect to the selected service provider.
 83. The machine-readable storage medium of claim 77, wherein the option to connect to said alternate service provider is sent after the connection between the user and the service provider ends.
 84. The machine-readable storage medium of claim 77, wherein the service provider is an information provider.
 85. The machine-readable storage medium of claim 84, wherein the information provider's information is provided in the form of a recorded transmission.
 86. The machine-readable storage medium of claim 84, wherein the information provider's information is provided in the form of a communication with a live person.
 87. The machine-readable storage medium of claim 77, wherein rate is a criterion by which an alternate service provider is matched.
 88. The machine-readable storage medium of claim 87, wherein a rate is determined to be a match if it is within a predetermined range of the selected service provider's rate.
 89. The machine-readable storage medium of claim 88, wherein the user determines the range of rates that match.
 90. The machine-readable storage medium of claim 88, wherein a system administrator determines the range of rates that match.
 91. The machine-readable storage medium of claim 77, wherein subject matter is a criterion by which an alternate service provider is matched.
 92. The machine-readable storage medium of claim 77, wherein a combination of criteria is used to determine a match.
 93. The machine-readable storage medium of claim 77, wherein a system administrator establishes the criteria by which a match is determined.
 94. The machine-readable storage medium of claim 77, wherein the user establishes the criteria by which a match is determined.
 95. The machine-readable storage medium of claim 77, wherein only service providers that pass a reliability criterion are considered.
 96. The machine-readable storage medium of claim 95, wherein reliability is determined based on a ratio of the number of calls answered by a service provider to the number of calls placed to the service provider.
 97. A system for establishing a real-time communication connection between two parties, the system comprising: a communications interface; and a controller computer linked with the communications interface, the controller computer having: a first logic unit to provide a list of service providers to a user, indicating the availability of that provider; a second logic unit to receive the user's selection of a service provider; a third logic unit to attempt to establish a real-time communications connection between the user and a selected service provider; and a fourth logic unit to offer to reconnect the service provider to the user when the service provider signals availability.
 98. The system of claim 97, wherein the fourth logic unit also offers a list of alternate providers
 99. The system of claim 97, wherein the user can specify the method by which the service provider is reconnected with the user.
 100. The system of claim 97, wherein the user can set a time limit on when to reconnect the service provider. 